package cn.tedu.fy.pethome.mapper;

import cn.tedu.fy.pethome.pojo.entity.Admin;
import cn.tedu.fy.pethome.pojo.vo.AdminListItemsVO;
import cn.tedu.fy.pethome.pojo.vo.AdminLoginVO;

import java.util.List;

public interface AdminMapper {

    /**
     * 添加管理员
     * @param admin 封装了需要添加的管理员的信息
     * @return 受影响的行数,添加成功返回1
     */
    int insert(Admin admin);


    /**
     * 根据id删除管理员数据
     * @param id 需要删除管理员数据的id
     * @return 受影响的行数,删除成功返回1
     */
    int deleteById(Long id);

    /**
     * 根据id修改管理员信息
     * @param admin 封装了需要修改的管理员id 以及需要更新的信息
     * @return 受影响的行数,修改成功返回1
     */
    int updateById(Admin admin);

    /**
     * 根据name查找数据
     * @param username 需要查找数据的name
     * @return 封装找到的数据
     */
   AdminLoginVO getByUserName(String username);

    /**
     * 查询管理员列表
     * @return 管理员列表的集合
     */
    List<AdminListItemsVO> list();

    /**
     * 根据id查询有多少条管理员数据
     * @param id 需要查询的的管理员id
     * @return 查询的条数
     */
    int countById(Long id);

    /**
     * 查询管理员数据有多少条
     * @return 有多少条就返回多少条
     */
    int count();





}
